package com.erp.framework.exceptions;

import java.util.ArrayList;


public class VerifyException extends SimpleException {
	private ArrayList errorCodeList = new ArrayList();
	private ArrayList errorMsgParamsList = new ArrayList();

	/**
	 * Constructs a VerifyException object
	 */
	public VerifyException() {
	}

	/**
	 * Constructs a VerifyException object with an error message
	 *
	 * @param msg error message for this exception
	 */
	public VerifyException(String msg) {
		super(msg);
	}

	public void addError(String code, String[] params) {
		errorCodeList.add(code);
		errorMsgParamsList.add(params);
	}

	public String getErrorCode(int i) {
		return (String) this.errorCodeList.get(i);
	}

	public String[] getErrorMsgParams(int i) {
		return (String[]) this.errorMsgParamsList.get(i);
	}

	public int getErrorCodeListSize() {
		return errorCodeList.size();
	}

	public int getErrorMsgParamsListSize() {
		return errorMsgParamsList.size();
	}

//	public String getErrorCode() {
//		return errorCode;
//	}
//
//	public void setErrorCode(String errorCode) {
//		this.errorCode = errorCode;
//	}
//
//	public String[] getErrorMsgParams() {
//		return errorMsgParams;
//	}
//
//	public void setErrorMsgParams(String[] errorMsgParams) {
//		this.errorMsgParams = errorMsgParams;
//	}
//	public String getMessage() {
//		ArrayList paramList = new ArrayList();
//
//		for (int i = 0; i < errorMsgParamsList.size(); ++i) {
//			Object obj = errorMsgParamsList.get(i);
//			String[] stringParam = null;
//			if (obj instanceof String[]) {
//				stringParam = (String[]) errorMsgParamsList.get(i);
//			}
//			if (stringParam != null) {
//				for (int j = 0; j < stringParam.length; ++j) {
//					if (paramList.size() < j+1) {
//						paramList.add(new StringBuffer(512));
//					}
//					StringBuffer param = (StringBuffer) paramList.get(j);
//					param.append(stringParam[j]);
//				}
//			}
//		}
//
//		StringBuffer msg = new StringBuffer(super.getMessage() + " ");
//		int v = 0;
//		String token = "{" + String.valueOf(v) + "}";
//		int pos = msg.indexOf(token);
//		while (pos > 0) {
//			msg.replace(pos, pos + token.length(), ((StringBuffer) paramList.get(v)).toString());
//			token = "{" + String.valueOf(++v) + "}";
//			pos = msg.indexOf(token);
//		}
//
//		return msg.toString();
//	}
}


